package ar.edu.utn.frgp.labtec.actions.contrato;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashSet;
import java.util.List;

import ar.edu.utn.frgp.labtec.actions.BaseAction;
import ar.edu.utn.frgp.labtec.entities.Cliente;
import ar.edu.utn.frgp.labtec.entities.Laboratorio;
import ar.edu.utn.frgp.labtec.entities.TipoPermisoEnum;


@SuppressWarnings("serial")
public class ContratoAction extends BaseAction {
	
	protected Integer idContrato;
	protected String anioContrato;
	protected String anioOrden;
	protected Integer idOrden;
	protected String zonaContrato;
	protected String estado;
	
	/** Cliente */
	protected Integer codCliente;
	protected String razonSocial;
	protected String responsable;
	protected String cuit;
	protected String domicilio;
	protected String localidad;
	protected String codigoPostal;
	protected String provincia;
	protected String telefono;
	protected String fax;
	protected String email;
	protected List<Cliente> listClientes;
	
	/** Solicitud cliente */
	protected String requisitos;
	protected String idLabDep;
	protected Integer laboratorio;
	protected String departamento;
	protected String inicialesLab;
	protected List<Laboratorio> listaLab;
	protected String usuRequisitos;
	protected String fechaRequisitos;
	
	/** Factibilidad */
	protected Integer recursosDisp;
	protected String detalleRecDisp;
	protected String usuDisponibilidad;
	protected String fechaDisponibilidad;
	
	/** Subcontratacion */
	protected Integer subcontratar;
	protected String detalleSubc;
	
	/** Tarea a realizar*/
	protected String fechaRealizacion;
	protected String trabajoArealizar;
	
	/** Revision */
	protected Integer acuerdoTrabajo;
	protected String causasRechModif;
	protected String usuAcuerdoTrabajo;
	protected String fechaAcuerdoTrabajo;
	
	/** Entrega */
	protected String datosElemMedir;
	protected Integer estadoConserv;
	protected String fechaEntregaInf;
	protected Integer recibioElem;
	protected String fechaRecibioElem;
	protected String usuEntrega;
	protected String fechaEntrega;
	
	public ContratoAction(){
		permisos = new HashSet<TipoPermisoEnum>();
		permisos.add(TipoPermisoEnum.L);
	}
	
	public Integer getIdContrato() {
		return idContrato;
	}
	public void setIdContrato(Integer idContrato) {
		this.idContrato = idContrato;
	}
	public String getAnioContrato() {
		return anioContrato;
	}
	public void setAnioContrato(String anioContrato) {
		this.anioContrato = anioContrato;
	}
	public Integer getIdOrden() {
		return idOrden;
	}
	public void setIdOrden(Integer idOrden) {
		this.idOrden = idOrden;
	}
	public String getRazonSocial() {
		return razonSocial;
	}
	public void setRazonSocial(String razonSocial) {
		this.razonSocial = razonSocial;
	}
	public String getResponsable() {
		return responsable;
	}
	public void setResponsable(String responsable) {
		this.responsable = responsable;
	}
	public String getCuit() {
		return cuit;
	}
	public void setCuit(String cuit) {
		this.cuit = cuit;
	}
	public String getDomicilio() {
		return domicilio;
	}
	public void setDomicilio(String domicilio) {
		this.domicilio = domicilio;
	}
	public String getLocalidad() {
		return localidad;
	}
	public void setLocalidad(String localidad) {
		this.localidad = localidad;
	}
	public String getCodigoPostal() {
		return codigoPostal;
	}
	public void setCodigoPostal(String codigoPostal) {
		this.codigoPostal = codigoPostal;
	}
	public String getProvincia() {
		return provincia;
	}
	public void setProvincia(String provincia) {
		this.provincia = provincia;
	}
	public String getTelefono() {
		return telefono;
	}
	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}
	public String getFax() {
		return fax;
	}
	public void setFax(String fax) {
		this.fax = fax;
	}
	public String getEmail() {
		return email;
	}
	public void setEmail(String email) {
		this.email = email;
	}
	public String getRequisitos() {
		return requisitos;
	}
	public void setRequisitos(String requisitos) {
		this.requisitos = requisitos;
	}
	public Integer getLaboratorio() {
		return laboratorio;
	}
	public void setLaboratorio(Integer laboratorio) {
		this.laboratorio = laboratorio;
	}
	public List<Laboratorio> getListaLab() {
		return listaLab;
	}
	public void setListaLab(List<Laboratorio> listaLab) {
		this.listaLab = listaLab;
	}
	public String getUsuRequisitos() {
		return usuRequisitos;
	}
	public void setUsuRequisitos(String usuRequisitos) {
		this.usuRequisitos = usuRequisitos;
	}
	public String getFechaRequisitos() {
		return fechaRequisitos;
	}
	public void setFechaRequisitos(String fechaRequisitos) {
		this.fechaRequisitos = fechaRequisitos;
	}
	public Integer getRecursosDisp() {
		return recursosDisp;
	}
	public void setRecursosDisp(Integer recursosDisp) {
		this.recursosDisp = recursosDisp;
	}
	public String getDetalleRecDisp() {
		return detalleRecDisp;
	}
	public void setDetalleRecDisp(String detalleRecDisp) {
		this.detalleRecDisp = detalleRecDisp;
	}
	public String getUsuDisponibilidad() {
		return usuDisponibilidad;
	}
	public void setUsuDisponibilidad(String usuDisponibilidad) {
		this.usuDisponibilidad = usuDisponibilidad;
	}
	public String getFechaDisponibilidad() {
		return fechaDisponibilidad;
	}
	public void setFechaDisponibilidad(String fechaDisponibilidad) {
		this.fechaDisponibilidad = fechaDisponibilidad;
	}
	public Integer getSubcontratar() {
		return subcontratar;
	}
	public void setSubcontratar(Integer subcontratar) {
		this.subcontratar = subcontratar;
	}
	public String getDetalleSubc() {
		return detalleSubc;
	}
	public void setDetalleSubc(String detalleSubc) {
		this.detalleSubc = detalleSubc;
	}
	public String getFechaRealizacion() {
		return fechaRealizacion;
	}
	public void setFechaRealizacion(String fechaRealizacion) {
		this.fechaRealizacion = fechaRealizacion;
	}
	public String getTrabajoArealizar() {
		return trabajoArealizar;
	}
	public void setTrabajoArealizar(String trabajoArealizar) {
		this.trabajoArealizar = trabajoArealizar;
	}
	public Integer getAcuerdoTrabajo() {
		return acuerdoTrabajo;
	}
	public void setAcuerdoTrabajo(Integer acuerdoTrabajo) {
		this.acuerdoTrabajo = acuerdoTrabajo;
	}
	public String getCausasRechModif() {
		return causasRechModif;
	}
	public void setCausasRechModif(String causasRechModif) {
		this.causasRechModif = causasRechModif;
	}
	public String getUsuAcuerdoTrabajo() {
		return usuAcuerdoTrabajo;
	}
	public void setUsuAcuerdoTrabajo(String usuAcuerdoTrabajo) {
		this.usuAcuerdoTrabajo = usuAcuerdoTrabajo;
	}
	public String getFechaAcuerdoTrabajo() {
		return fechaAcuerdoTrabajo;
	}
	public void setFechaAcuerdoTrabajo(String fechaAcuerdoTrabajo) {
		this.fechaAcuerdoTrabajo = fechaAcuerdoTrabajo;
	}
	public String getDatosElemMedir() {
		return datosElemMedir;
	}
	public void setDatosElemMedir(String datosElemMedir) {
		this.datosElemMedir = datosElemMedir;
	}
	public Integer getEstadoConserv() {
		return estadoConserv;
	}
	public void setEstadoConserv(Integer estadoConserv) {
		this.estadoConserv = estadoConserv;
	}
	public String getFechaEntregaInf() {
		return fechaEntregaInf;
	}
	public void setFechaEntregaInf(String fechaEntregaInf) {
		this.fechaEntregaInf = fechaEntregaInf;
	}
	public Integer getRecibioElem() {
		return recibioElem;
	}
	public void setRecibioElem(Integer recibioElem) {
		this.recibioElem = recibioElem;
	}
	public String getFechaRecibioElem() {
		return fechaRecibioElem;
	}
	public void setFechaRecibioElem(String fechaRecibioElem) {
		this.fechaRecibioElem = fechaRecibioElem;
	}
	public String getUsuEntrega() {
		return usuEntrega;
	}
	public void setUsuEntrega(String usuEntrega) {
		this.usuEntrega = usuEntrega;
	}
	public String getFechaEntrega() {
		return fechaEntrega;
	}
	public void setFechaEntrega(String fechaEntrega) {
		this.fechaEntrega = fechaEntrega;
	}

	public String getZonaContrato() {
		return zonaContrato;
	}
	public void setZonaContrato(String zonaContrato) {
		this.zonaContrato = zonaContrato;
	}
	public String getEstado() {
		return estado;
	}
	public void setEstado(String estado) {
		this.estado = estado;
	}
	public String getDepartamento() {
		return departamento;
	}
	public void setDepartamento(String departamento) {
		this.departamento = departamento;
	}
	public String getAnioOrden() {
		return anioOrden;
	}
	public void setAnioOrden(String anioOrden) {
		this.anioOrden = anioOrden;
	}
	public String getIdLabDep() {
		return idLabDep;
	}
	public void setIdLabDep(String idLabDep) {
		this.idLabDep = idLabDep;
	}
	public String getInicialesLab() {
		return inicialesLab;
	}
	public void setInicialesLab(String inicialesLab) {
		this.inicialesLab = inicialesLab;
	}
	
	protected String formatDate(Date fecha){
		String result = new String();
		
		if(fecha != null){
			SimpleDateFormat format = new SimpleDateFormat("dd-MM-yy");
			result = format.format(fecha);
		}
		
		return result;
	}
	public List<Cliente> getListClientes() {
		return listClientes;
	}
	public void setListClientes(List<Cliente> listClientes) {
		this.listClientes = listClientes;
	}
	public Integer getCodCliente() {
		return codCliente;
	}
	public void setCodCliente(Integer codCliente) {
		this.codCliente = codCliente;
	}
}
